Randomized Mesh Network Routing

ABSTRACT

A time domain multiplexed (TDM) routing schedule for a wireless mesh network can be generated using a Markov chain process. In particular, synchronized paths between access nodes and gateways in the mesh network can be added to, and removed from, the TDM routing schedule in an iterative fashion according to each individual state in a state progression of a Markov chain, with each state of the Markov chain mapping a different combination of synchronized paths to the TDM routing schedule. In some embodiments, transitioning between states of a Markov chain is performed according to a proportionally fair transition rate.

TECHNICAL FIELD

The present invention relates generally to managing the allocation ofresources in a network, and in particular embodiments, to techniques andmechanisms for randomized mesh network routing.

BACKGROUND

Next-generation wireless networks may adopt millimeter wave (mmWave)wireless mesh backhaul networks in place of, or addition to, traditionalwireline (e.g., fiber optic) backhaul networks. In general, mmWavesignals refer to wireless transmissions over carrier frequencies between6 Gigahertz (GHz) and 300 GHz. Due to the free space path loss ofcarrier frequencies exceeding 6 GHz, mmWave signals tend to exhibithigh, oftentimes unacceptable, packet loss rates when transmitted overrelatively long distances. Beamforming may be used to extend the rangeof mmWave signals to a distance that is suitable for implementation inmesh backhaul networks. However, the highly directional nature ofbeamformed mmWave signals may have the unintended consequence of “passthrough interference” between the nodes (e.g., access points, gateways,etc.) forming the mesh backhaul network.

SUMMARY OF THE INVENTION

Technical advantages are generally achieved, by embodiments of thisdisclosure which describe techniques and mechanisms for randomized meshnetwork routing.

In accordance with an embodiment, a method for scheduling wirelesstransmissions is provided. In this example, the method includesselecting routes between access nodes and one or more gateways in awireless mesh network, and mapping wireless links in at least some ofthe routes to timeslots of a frame to form a plurality of synchronizedpaths between the access nodes and the gateways. The method furtherincludes iteratively adding, or removing, an individual one of theplurality of synchronized paths to, or from, a time division multiplexed(TDM) routing schedule according to each individual state in a stateprogression of a Markov chain, and instructing the access nodes and theone or more gateways to communicate messages over the wireless linksaccording the TDM routing schedule. The TDM routing schedule includes adifferent subset of synchronized paths for each state in the Markovchain. An apparatus for performing this method is also provided.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present disclosure, and theadvantages thereof, reference is now made to the following descriptionstaken in conjunction with the accompanying drawings, in which:

FIGS. 1A-1C illustrates a diagram of a wireless mesh network;

FIG. 2 illustrates a diagram of candidate routes through a wireless messnetwork 100

FIG. 3 illustrates a diagram of an embodiment Markov chain progressionduring generation of a TDM routing schedule for communicating signalsover a wireless mesh network;

FIGS. 4A-4K illustrate diagrams of frame configurations corresponding tothe different states of the Markov chain progression illustrated in FIG.3;

FIGS. 5A-5H illustrate diagrams of how packets are communicated over awireless mesh network according to the frame configuration depicted inFIG. 4K;

FIG. 6 illustrates a flowchart of an embodiment method for generating aTDM routing schedule according to a Markov chain progression;

FIG. 7 illustrates a diagram of a Markov chain;

FIG. 8 illustrates a diagram of an irreducible Markov chain;

FIG. 9 illustrates a diagram of a reducible Markov chain;

FIG. 10 illustrates a diagram of a continuous time Markov chain;

FIG. 11 illustrates a diagram of a Markov chain progression for anN-path mesh network optimization problem

FIG. 12 illustrates a diagram of a network for communicating trafficflows between nodes;

FIG. 13 illustrates a diagram of a TDM schedule for communicatingtraffic over physical paths of the network depicted in FIG. 12.

FIG. 14 illustrates a diagram of another TDM schedule for communicatingtraffic over physical paths of the network depicted in FIG. 12.

FIG. 15 illustrates a diagram of another network for communicatingtraffic flows between nodes;

FIG. 16 illustrates a diagram of an embodiment processing system; and

FIG. 17 illustrates a diagram of an embodiment transceiver.

Corresponding numerals and symbols in the different figures generallyrefer to corresponding parts unless otherwise indicated. The figures aredrawn to clearly illustrate the relevant aspects of the embodiments andare not necessarily drawn to scale.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

The making and using of embodiments of this disclosure are discussed indetail below. It should be appreciated, however, that the conceptsdisclosed herein can be embodied in a wide variety of specific contexts,and that the specific embodiments discussed herein are merelyillustrative and do not serve to limit the scope of the claims. Further,it should be understood that various changes, substitutions andalterations can be made herein without departing from the spirit andscope of this disclosure as defined by the appended claims. Althoughmuch of this disclosure are discussed in the context of beamformedmmWave transmissions in a wireless backhaul network, those of ordinaryskill in the art will understand that the inventive aspects providedherein may be applied in any wireless mesh network, including thoseusing non-beamformed transmissions over lower carrier frequencies.Aspects of this disclosure relate to Markov chains and Markov processes.A general description of Markov processes is provided in the textentitled “Random Processes for Engineers” by Bruce Hajek, which isincorporated herein by reference as if reproduced in its entirety.

The term “pass through interference” generally refers to interferenceexperienced by a neighboring node as a result of a transmission betweentwo neighboring nodes in a wireless mesh network. One way of mitigatingpass through interference is to schedule transmissions over links in thewireless mesh network according to a time division multiplexed (TDM)scheme. As an example, consider a wireless mesh network that includestwo access nodes (e.g., base stations) and one gateway positionedin-between the access nodes. In such an example, a transmission fromeither of the access nodes to the gateway may result in high levels ofinterference over a wireless backhaul link between the gateway and theother access node.

In larger mesh backhaul networks, there may be multiple hops (e.g.,multiple backhaul links) along a given route between an access node anda gateway. In such networks, TDM schemes may schedule links of a givenroute to timeslots in a frame to form synchronized paths between theaccess nodes and gateways. As used herein, the term “synchronized path”refers to the scheduling (or mapping) of links in a given route totimeslots in frame. In that context, mapping the links in a given routeto the timeslots of the frame forms a “synchronized path” through thewireless mesh network. For larger wireless mesh networks (e.g., networkswith many nodes, links, and potential routes), determining whichsynchronized paths to include in the TDM routing schedule becomes arelatively complex optimization problem, particularly when loading isunevenly distributed across the access nodes and fluctuates over time.

Embodiments of this disclosure simplify that optimization problem byiteratively adding, and removing, individual synchronized paths to a TDMrouting schedule according to a Markov chain. As used herein, the term“Markov chain” refers to a state diagram for modeling the communicationof signaling over a mesh network. In particular, each state of a Markovchain maps a different combination of synchronized paths to the TDMrouting schedule. Accordingly, an individual synchronized path is eitheradded or removed when transitioning from one state of the Markov chainto another. In some embodiments, transitioning between states of aMarkov chain is performed according to a proportionally fair transitionrate. Before transitioning to a new state, a scheduler may determinewhether it is feasible to add a synchronized path associated with theMarkov state to an existing TDM routing schedule based on aninterference model of the mesh network. In one embodiment, thefeasibility determination is based on a protocol interference model thatprohibits transmissions from being scheduled over two or moreinterfering links during the same timeslot of the frame. In anotherembodiment, the feasibility determination is based on a physicalinterference model that permits transmissions to be scheduled over twoor more interfering links during the same timeslot of the frame when aninterference cost associated with the transmissions is less than athreshold. In such an embodiment, the interference costs may vary basedon the amount of interference experienced between transmissionsperformed over the two or more interfering links during the same period.The amount of interference experienced between the transmissions mayvary according to a number of factors, such as the path loss between thetransmitters and receivers, as well as the transmission parameters(e.g., transmit power levels, beam-directions, etc.) used to perform therespective transmissions.

In some embodiments, a transition rate of the Markov chain may beadjusted following a transition from a previous state to a subsequentstate. The transition rate may be adjusted periodically, e.g., aftereach transition, every other transition, every Nth transition (where Nis an integer greater than one), etc. Alternatively, the transition ratemay be adjusted aperiodically, e.g., randomly, at the discretion of thenetwork operator, after a triggering condition has occurred, etc. Thetransition rate may be adjusted according to one or morecharacteristics, parameters, and/or values associated with the networkand/or the Markov chain. For example, the transition rate may beadjusted based on a ratio of users to synchronized paths specified bythe subsequent state in the Markov chain. In such an example, the ratioof users to synchronized paths may include the summation of ratiosbetween users accessing each of the access nodes and synchronized pathsassigned to the corresponding access point in the TDM routing schedule.In one embodiment, the transition rate is a function of beta (β). By wayof example, the path setup rate at a given node (access node “s”) may bedetermined according to the following equations: setup-rate(s)=gammaexp(beta d_(s)/m_(s)); release_rate(s)=gamma, where setup-rate(s) is thepath setup rate for access node s, release-rate(s) is the path releaserate for access node s, d_(s) is the number of users at the access nodeS, m_(s) is the number of paths setup for access node s, and gamma is asystem parameter. In such an example, the transition rate may beadjusted by re-computing beta according to the ratio of users tosynchronized paths specified. By way of example, beta may be computedaccording to the following equation

${{beta} = \frac{{\ln ( \frac{intensity}{1 - {intensity}} )}*{nodes}}{{sum\_ of}{\_ ratios}{\_ of}{\_ users}{\_ to}{\_ assigned}{\_ paths}}},$

wherein intensity is a control variable corresponding to how aggressivethe algorithm is in attempting to find paths, nodes is the number ofaccess nodes in the networks, and thesum_of_ratios_of_users_to_assigned_paths is the summation of ratiosbetween users accessing each access node and the number of pathsassigned to the access node in the TDM schedule specified by the currentstate in the Markov chain. Other examples are also possible. These andother inventive aspects are described in greater detail below.

FIGS. 1A-1C illustrate a wireless mesh network 100 that includes accessnodes 110-180 and a gateway 190. As used herein, the term “access node”refers to any component (or collection of components) configured toprovide direct, or indirect, wireless access to a network, such aswireless access points (e.g., base stations, etc.) and/or repeaters(e.g., relays between an access point and a gateway). As used herein,the term “gateway” refers to any component (or collection of components)that acts as an ingress or egress point to the wireless mesh network,such as Internet gateway. Although the It should be appreciated that thewireless mesh network 100 is depicted as including a single gateway 190for purposes of clarity and brevity, and that embodiment wireless meshnetworks may include multiple gateways distributed over the networktopology.

In this example, the access nodes 110-180 are connected with oneanother, as well as with the gateway 190 via wireless links 112, 114,123, 125, 136, 145, 147, 156, 158, 169, 178, 189. In particular, theaccess node 11 o is interconnected to the access node 120 via thewireless link 112 and to the access node 140 via the wireless link 114.The access node 120 is interconnected to the access node 130 via thewireless link 123 and to the access node 150 via the wireless link 125.The access node 130 is interconnected to the access node 160 via thewireless link 135, and the access node 140 is interconnected to theaccess node 150 via the wireless link 145 and to the access node 170 viathe wireless link 147. The access node 150 is interconnected to theaccess node 160 via the wireless link 156 and to the access node 180 viathe wireless link 158. The access node 160 is interconnected to thegateway 190 via the wireless link 169, the access node 170 isinterconnected to the access node 180 via the wireless link 178, and theaccess node 180 is interconnected to the gateway 190 via the wirelesslink 189.

Due to pass through interference, transmissions over the wireless links112, 114, 123, 125, 136, 145, 147, 156, 158, 169, 178, 189 may interferewith one another. FIG. 1B illustrates how uplink transmissions produceinterference in the wireless mess network 100. As shown, an uplinktransmission 101 over the wireless link 114 produces interference on thewireless link 147. Similarly, uplink transmissions 102, 104, 105, 106,and 108 over the wireless links 112, 145, 125, 136, and 178(respectively) produce interference on the wireless links 123, 156, 158,169, 189 (respectively).

FIG. 1C illustrates how downlink transmissions produce interference inthe wireless mess network 100. As shown, a downlink transmission 196over the wireless link 169 produces interference on the wireless link136. Similarly, downlink transmissions 195, 185, 171, 165, and 132 overthe wireless links 189, 158, 147, 156, and 123 (respectively) produceinterference on the wireless links 178, 125, 114, 145, and 112(respectively).

As mentioned above, it is possible to mitigate inter-link interferencein a wireless mesh network by communicating transmissions over links inthe wireless mesh network according to a time division multiplexed (TDM)routing schedule. Embodiments of this disclosure provide techniquesgenerating and/or refining the TDM routing schedule according to aMarkov chain. In particular, embodiments techniques map wireless linksin routes between access nodes and gateway(s) to timeslots of a frame tofrom synchronized paths through the wireless mess network. Individualsynchronized paths are then iteratively added, and removed, from the toa TDM routing schedule by transitioning between states of the Markovchain.

FIG. 2 illustrates a diagram of candidate routes 210-280 through thewireless mess network 100. In this example, the candidate route 210extends from the access node 110 over the wireless links 114, 147, 178,189 to the gateway 190. The candidate route 220 extends from the accessnode 120 over the wireless links 125, 158, 189 to the gateway 190. Thecandidate route 230 extends from the access node 130 over the wirelesslinks 136, 169 to the gateway 190. The candidate route 240 extends fromthe access node 140 over the wireless links 145, 156, 169 to the gateway190. The candidate route 250 extends from the access node 150 over thewireless links 156, 169 to the gateway 190. The candidate route 260extends from the access node 160 over the wireless link 169 to thegateway 190. The candidate route 270 extends from the access node 170over the wireless links 278, 189 to the gateway 190. The candidate route280 extends from the access node 180 over the wireless link 189 to thegateway 190.

Embodiments of this disclosure generate and/or refine TDM routingschedule according to a Markov chain. FIG. 3 illustrates a diagram of anembodiment Markov chain progression 300 during which synchronized pathsare iteratively added, and removed, from a TDM routing schedule forcommunicating signals over the wireless mesh network 100. FIGS. 4A-4Iillustrate frame configurations associated with different states of theMarkov chain progression 300 depicted in FIG. 3. It should beappreciated that although a Markov chain for the all possiblecombinations of synchronized paths for the routes depicted in FIG. 2 hasnot been shown for purposes of brevity and concision, examples of Markovchains for smaller wireless mesh networks are shown in FIGS. 7-10.

As shown in FIG. 3, the embodiment Markov chain progression 300 beginsat state 301 of the Markov chain, where no synchronized paths areassigned to the TDM routing schedule. The resulting frame configuration401 is depicted in FIG. 4A. Next, the embodiment Markov chainprogression 300 proceeds to state 311, where a synchronized path mappinglinks of the route 210 to timeslots of the frame is added to the TDMrouting schedule. A resulting frame configuration 411 associated withthe state 311 is depicted in FIG. 4B. As shown, link 114 of the route210 is mapped to timeslot 1, link 147 of the route 210 is mapped totimeslot 2, link 178 of the route 210 is mapped to timeslot 3, and link189 of the route 210 is mapped to timeslot 4.

Subsequently, the embodiment Markov chain progression 300 proceeds tostate 321, where a synchronized path mapping links of the route 240 totimeslots of the frame is added to the TDM routing schedule. A resultingframe configuration 421 associated with the state 321 is depicted inFIG. 4C. As shown, link 145 of the route 240 is mapped to timeslot 2,link 156 of the route 240 is mapped to timeslot 3, and link 169 of theroute 240 is mapped to timeslot 4.

Thereafter, the embodiment Markov chain progression 300 proceeds tostate 331, where a synchronized path mapping links of the route 230 totimeslots of the frame is added to the TDM routing schedule. A resultingframe configuration 431 associated with the state 331 is depicted inFIG. 4D. As shown, link 136 of the route 230 is mapped to timeslot 1,and link 169 of the route 230 is mapped to timeslot 2.

Next, the embodiment Markov chain progression 300 proceeds to state 341,where a synchronized path mapping links of the route 220 to timeslots ofthe frame is added to the TDM routing schedule. A resulting frameconfiguration 441 associated with the state 341 is depicted in FIG. 4E.As shown, link 125 of the route 220 is mapped to timeslot 3, link 158 ofthe route 220 is mapped to timeslot 4, and link 189 of the route 220 ismapped to timeslot 5.

Next, the embodiment Markov chain progression 300 proceeds to state 332,where the synchronized path for the route 240 that was added in state321 is removed. As shown in FIG. 4F, the resulting frame configuration432 includes the synchronized paths for the routes 210, 220, and 230that were added in states 311, 331, and 341 (respectively), and excludesthe synchronized path for the route 240 added in state 321.Removing/releasing synchronized paths in this manner may allow theiterative technique to avoid local maximums and ultimately generate TDMrouting schedules that achieve higher performance.

Subsequently, the embodiment Markov chain progression 300 proceeds tostate 342, where a synchronized path mapping links of the route 270 totimeslots of the frame is added to the TDM routing schedule. A resultingframe configuration 442 associated with the state 342 is depicted inFIG. 4G. As shown, link 178 of the route 270 is mapped to timeslot 1,and link 189 of the route 270 is mapped to timeslot 2.

Thereafter, the embodiment Markov chain progression 300 proceeds tostate 351, where a synchronized path mapping links of the route 280 totimeslots of the frame is added to the TDM routing schedule. A resultingframe configuration 451 associated with the state 351 is depicted inFIG. 4H. As shown, link 189 of the route 280 is mapped to timeslot 6.

Next, the embodiment Markov chain progression 300 proceeds to state 361,where a synchronized path mapping links of the route 250 to timeslots ofthe frame is added to the TDM routing schedule. A resulting frameconfiguration 461 associated with the state 361 is depicted in FIG. 4I.As shown, link 156 of the route 250 is mapped to timeslot 4, and link169 of the route 250 is mapped to timeslot 5.

Subsequently, the embodiment Markov chain progression 300 proceeds tostate 371, where a synchronized path mapping links of the route 240 totimeslots of the frame is added to the TDM routing schedule. A resultingframe configuration 471 associated with the state 371 is depicted inFIG. 4J. Notably, state 371 maps the links of the route 240 to differenttimeslots than the state 321. In particular, link 145 of the route 240is mapped to timeslot 1, link 156 of the route 240 is mapped to timeslot2, and link 169 of the route 240 is mapped to timeslot 3.

Finally, the embodiment Markov chain progression 300 proceeds to state381, where a synchronized path mapping links of the route 260 totimeslots of the frame is added to the TDM routing schedule. A resultingframe configuration 481 associated with the state 381 is depicted inFIG. 4K.

FIGS. 5A-5H illustrate diagrams of how packets are communicated over thewireless mesh network 100 according to the synchronized paths defined bythe frame configuration 481 depicted in FIG. 4K.

As shown in FIG. 5A, the access nodes 110, 120, 130, 140, 150, 160, 170,180 have packets P1, P2, P3, P4, P5, P6, P7, P8 (respectively) to becommunicated to the gateway 190 over synchronized paths defined by theframe configuration 481. FIGS. 5B-5G illustrate how the packets P1, P2,P3, P4, P5, P6, P7, P8 are communicated over routes 210, 220, 230, 240,250, 260, 270, 280 (respectively) during each timeslot of the frameconfiguration 481.

In particular, FIG. 5B illustrates how packets P1, P3, P4, and P7 areforwarded over corresponding hops of the routes 210, 230, 240, and 270(respectively) during the first timeslot of the frame configuration 481.As shown, the packet P1 is communicated over the link 114, the packet P3is communicated over the link 136, the packet P4 is communicated overthe link 145, and the packet P7 is communicated over the link 178.

FIG. 5C illustrates how packets P1, P3, P4, and P7 are forwarded overcorresponding hops of the routes 210, 230, 240, and 270 (respectively)during the second timeslot of the frame configuration 481. As shown, thepacket P1 is communicated over the link 147, the packet P3 iscommunicated over the link 169, the packet P4 is communicated over thelink 156, and the packet P7 is communicated over the link 189.

FIG. 5D illustrates how packets P1, P2, and P4 are forwarded overcorresponding hops of the routes 210, 220, and 240 (respectively) duringthe third timeslot of the frame configuration 481. As shown, the packetP1 is communicated over the link 178, the packet P2 is communicated overthe link 125, and the packet P4 is communicated over the link 169.

FIG. 5E illustrates how packets P1, P2, P5, and P6 are forwarded overcorresponding hops of the routes 210, 220, 250, and 260 (respectively)during the fourth timeslot of the frame configuration 481. As shown, thepacket P1 is communicated over the link 189, the packet P2 iscommunicated over the link 158, the packet P5 is communicated over thelink 156, the packet P6 is communicated over the link 169.

FIG. 5F illustrates how packets P2 and P5 are forwarded overcorresponding hops of the routes 220 and 250 (respectively) during thefifth timeslot of the frame configuration 481. As shown, the packet P2is communicated over the link 189, and the packet P5 is communicatedover the link 169.

FIG. 5G illustrates how the packet P8 is forwarded link 189 of the route280 during the sixth timeslot of the frame configuration 481. As shownin FIG. 5H, each of the packets have been received by the gateway 190after the sixth timeslot of the frame configuration 481.

FIG. 6 illustrates a flowchart of an embodiment method 600 forgenerating a TDM routing schedule for a wireless mesh network accordingto a Markov chain, as may be performed by a controller. As shown, theembodiment method 600 begins at step 610, where the controller selectsroutes between access nodes and one or more gateways in a wireless meshnetwork. Each of the routes has one or more wireless links. At step 620,the controller maps wireless links in at least some of the routes totimeslots of a frame to form a plurality of synchronized paths betweenthe access nodes and the gateways. At step 630, the controlleriteratively adds, or removes, an individual one of the plurality ofsynchronized paths to, or from, a TDM routing schedule according to eachindividual state in a state progression of a Markov chain. As explainedabove, each state of the Markov chain maps a different combination ofsynchronized paths to the TDM routing schedule. At step 640, thecontroller instructs the access nodes and the one or more gateways tocommunicate messages over the wireless links according the TDM routingschedule.

As discussed above, embodiments of this disclosure configure a TDMrouting schedule for a wireless mesh network based on a Markov chain. AMarkov chain is technique for modeling a random process that undergoestransitions between states in a state space. Markov chains arememoryless states machines, meaning that the probability of progressingto the next state depends only on the current state. FIG. 7 illustratesa diagram of a Markov chain 700. The variable X is used to denote thecurrent state, and the transition probability of going from state i tostate j in a single time step is p_(ij). In this example, Xε{1, 2, 3, 4}and

$P = {\lbrack p_{ij} \rbrack = {\begin{bmatrix}0.6 & 0.4 & 0 & 0 \\0 & 0.8 & 0 & 0.2 \\0.3 & 0.5 & 0.2 & 0 \\0 & 0 & 0.6 & 0.4\end{bmatrix}.}}$

If the state transition probabilities are constant, then the differentstates have steady state probabilities (aka stationary distribution),and then the steady state probabilities (π) can found by computing P^(n)as n goes to infinity. In this example, the steady state probabilitieswould be as follows:

$\pi = {{\lim\limits_{n->\infty}\; P^{n}} = {\begin{bmatrix}0.106 & 0.565 & 0.141 & 0.188 \\0.106 & 0.565 & 0.141 & 0.188 \\0.106 & 0.565 & 0.141 & 0.188 \\0.106 & 0.565 & 0.141 & 0.188\end{bmatrix} = {\quad{\begin{bmatrix}0.106 & 0.565 & 0.141 & 0.188\end{bmatrix}.}}}}$

Markov chains can be either reducible or irreducible. In an irreducibleMarkov chain, it is possible to get to any state from any state. FIG. 8illustrates a diagram of an irreducible Markov chain 800. As shown, allstates in the irreducible Markov chain 700 are recurrent, meaning thatgiven sufficient time, a state progression will eventually return toeach state. A state is positive recurrent if it's mean recurrence timeis finite, e.g., a random walk on the set of integers (+1, −1) withprobability 0.5 is a null-recurrent Markov chain. In a reducible Markovchain, it is not possible to get to any state from any state. FIG. 9illustrates a diagram of a reducible Markov chain 900. As shown, states1 and 3 are transient, meaning that the progression does not return totheses states after leaving them.

In a continuous time Markov chain, the probabilities of the equivalentfinite state Markov chain are converted into a length of time that theprogression spends in the given state space. FIG. 10 illustrates adiagram of a continuous time Markov chain 900. In the continuous timeMarkov chain 1000, each transition has a rate (qj) and associated withit. A clock is attached to each transition, and the time until the clockexpires is an exponential random variable (t_(j)) that is a function ofthe rate (qj) associated with the transition. The time spent in a givenstate is associated with another random variable (T) with rate (v),where v=q₁+q₂+q₃+ . . . q_(N). From this, the probability that the nextstate is state j may be determined according to the following formula:p_(j)=q_(j)/v.

FIG. 11 illustrates a diagram of a Markov chain progression for anN-path mesh network optimization problem. As shown, the optimizationproblem becomes more complex when as the number of synchronized paths isincreased.

FIG. 12 illustrates a network for communicating traffic flows from nodeA to node D. There are two physical paths for communicating traffic fromA to D, namely the path ABCD and the path AED. FIG. 13 illustrates a TDMschedule for communicating traffic over physical paths of the network1200. The time axis is divided into two frames each of which includethree time-slots. In the first slot the links AB and ED are active. Inthe second slot, the link BC is active. In the third slot, the links CDand AE are active. Later frames are identical, and this cycle oftransmissions achieves the maximal throughput from A to D of 2/3 of thelink capacity (i.e. two slots of traffic per three slots of timeelapsed). This network is essentially a circuit-switched network. Anelement of the network is j=(i, t) where iεI labels the physical linkand tεT labels the slot within a frame: here T={1, 2, . . . , T} and Tis the frame length. Thus jεJ=I×T. A path through the network is a set,r, of elements which allows data to be transported from a source to adestination. A first path through the network 1200 is r₁={(AB,1),(BC,2), (CD,3)}. A second path through the network is r₂={(AB,2),(BC,3), (CD,1)}. The first path is compatible (e.g., can coexist) with athird path r₃={(AE,3), (ED, 1)}, while the second path (r₂) is notcompatible with the third path (r₃). Together, the paths (r₁, r₃)achieve a throughput from node A to node E of 2/3, or two slots oftraffic for every three slots of elapsed time.

In some examples, there may also be traffic from node A to node E. FIG.14 illustrates a TDM schedule for communicating traffic over a physicalpath ABCD and AE of the network 1200. As shown, a fourth path throughthe network is r₄={(AE,2)}.

Then (r₁, r₃, r₄) can coexist, and this triple achieves a throughput of1/3 from A to E as well as the throughput of 2/3 from A to D. If therelative throughputs required were different, then a different framelength than T=3 might well be desirable. For example, a frame length ofT=2 allows a throughput of 1/2 from A to E and of 1/2 from A to D.

By making the frame length arbitrarily long, it is possible to approachany convex combination of the two solutions. More generally, for anynetwork, the capacity (or rate) region will approach a convex region asthe frame length becomes larger and larger.

Consider the following example, where n_(r)=1 if a synchronized path iscurrently set up along a route rεR, and n_(r)=0 otherwise. Here R is theset of possible paths (many of which conflict with each other). Definethe vector n=(n_(r), rεR). Write that the state n is feasible if theSINR inequalities are simultaneously satisfied for all of the paths inn, that is all paths r with n_(r)=1. Let N be the set of feasiblestates. It is a subset of {0,1}^(R) with the following hierarchicalproperty: if e_(r) is the state describing one path on route r, thenn+e_(r)εNnεN.

Let S be the set of access points, S, say, in total. Let H, the flowcomposition matrix, be the incidence matrix identifying which pathsserve which access points: i.e. H_(sr)=1 if path r serves access points, and H_(sr)=0 otherwise. (Column sums of H are 1, i.e. each path has asingle access point that it serves. Let s(r) be that access point forpath r.) The aggregate throughput x_(s) for an access point s is the sumof the paths serving it:

${x_{s} = {\sum\limits_{r\; \in \; R}\; {H_{sr}n_{r}}}},$

sεS., which may also be written as x=Hn.

A proportionally fair allocation of capacity may be given by maximizing:

$\sum\limits_{s\; \in \; S}{d_{s}\log \; x_{s}}$

subject to x=Hn over nεN. (1).

It is possible to determine the rough complexity of this approach.Consider a set of routes R. For each access point sεS, suppose there areconstructed one or more physical paths to a gateway. In some examples,the paths are the shortest paths through the physical network togateways if the shortest physical path is not unique. In some examples,the paths include a node-disjoint physical path to a gateway. Eachphysical path has associated with it T synchronized paths. So there areof order O(ST) paths in the set R. The set N is of vastly largersize—it's a subset of {0,1}^(R) and may grow exponentially with thenumber of access points S.

FIG. 15 illustrates another example of a network. There are four links,each of equal capacity and each carrying one hop traffic between itsendpoints. Transmission and reception from a node cannot take placesimultaneously. Thus if T=1 there are two maximal cliques: either thelinks AB and CD are active, or the links BC and DA are active. Considerthe above routing strategy operating with Poisson arrivals and randomdepartures of end-users for each of the links. Let d_(r), r=1, 2, 3, 4be the number of end-users at links AB, BC, CA, AD, respectively. Thend_(r), r=1, 2, 3, 4 evolve over time, but at a fixed point in time theyare independent Poisson random variables.

If T≧1 then the number of maximal cliques is 2^(T). We know this, butAlgorithm 1 that we are about to describe does not. Algorithm 1 On anarrival of a new end-user, say an increase of d₁ by 1, the correspondinglink AB looks through the T paths (AB, t), t=1, 2, . . . , T in a randomorder to see if one is available: if it finds one it grabs it. Whetherit can find one or not it shares all the paths it has set up over thed₁+1 end-users it now has. On the departure of an end-user, say adecrease of d₁ by 1, the corresponding link AB looks to see if it hasd₁+1 paths set up: if it has, it clears down the oldest of these paths.Similarly for links 2, 3 and 4.

Algorithm 2: Suppose the algorithm is aware of the set of maximalcliques, and so does the following variation. On an increase of d₁ by 1,the link AB looks through the T paths (AB, t), t=1, 2, . . . , T in thatorder for a new available path. The link CD behaves similarly. The linkBC looks through its T paths in the reverse order (BC, t), t=T, . . . ,2, 1, and the link DA behaves similarly. When a link clears down a pathit chooses the most recently set up of its paths in use. Thus the pathsin use by a link will be in contiguous time slots, from 1 upwards forlinks AB and CD and from T downwards for links BC and DA.

Recall that the number of end-users, d_(r), r=1, 2, 3, 4, areindependent Poisson random variables with means of say λ_(r), r=1, 2, 3,4 respectively. Let X_(r), r=1, 2, 3, 4 be the number of paths set up tocarry the traffic of these end-users. (Both X_(r) and d_(r) are valuesof a stochastic process observed at a point in time.)

Algorithm 3. As with Algorithm 1, setup 1 path from every access node toa network gateway. This time, we don't use attach/detach as a trigger.Instead every access node establishes a new path at the rate γ e^(θ)^(s) (3) where the parameter θ_(s) is given by:

$\theta_{s} = {\beta \frac{d_{s}}{X_{s}}}$

We release paths at a constant rate γ. We can release the oldest pathusing this approach. In this algorithm γ controls the rate at whichpaths are setup and cleared, so γ is controlling the rate at which thesystem evolves. The parameter θ_(r) is controlling the rate at whichindividual access nodes try to setup requests. Since θ_(r) is based onthe ratio of the number of users at an access point to the number ofpaths at an access point, the setup rate will try and increase when anaccess point has a bandwidth deficit and decrease when an access pointhas a bandwidth surplus.

Regarding Markov Approximation. Consider that N ⊂{0,1}^(R) is the set offeasible states. Let n be a Markov process with state space N andtransition rates 2q(n,n−e_(r))=γ if n_(r)=1, (4); q(n,n+e_(r))=γexp(θ_(s(r))) if n+e_(r)εN, (5) for rεR, where e_(r)εN is a unit vectorwith a 1 as its r th component and 0s elsewhere. When n_(r)=1, asynchronized path r is currently set up for the given route: it remainsset up for a time that is exponentially distributed with parameter γ.Thus the first path serving access point s to clear down does so afteran exponentially distributed time with parameter γm_(s) where

${m_{s} = {\sum\limits_{r\; \in \; R}{H_{sr}n_{r}}}},$

the number of paths set up that are serving access point s. (The resultsremain the same if every path that is set up clears down after a fixedlength of time γ⁻¹.)

If n_(r)=0, and it is feasible to set up the path r without violatingSINR inequalities for existing paths, then path r is set up at rate γexp (θ_(s(r))), for each path rεR. (Recall s(r) is the access pointserved by path r.) Thus the rate at which paths are set up for accesspoint s is k_(s)γ exp(θ_(s)) where k_(s) counts the number of paths inthe set {rεR: H_(sr)=1 and n+e_(r)εN}, i.e. the number of paths servingaccess point s that are individually system feasible to add to n.

The equilibrium distribution for n=(n_(r), rεR) can be written in theform:

${{\pi_{\theta}(n)} = \frac{\exp( {\sum\limits_{r\; \in \; R}{\theta_{s{(r)}}n_{r}}} )}{\sum\limits_{n^{\prime} \in \; N}{\exp ( {\sum\limits_{r\; \in \; R}{\theta_{s{(r)}}n_{r}}} )}}},$

nεN. (6). This follows, since (π_(θ)(n), nεN) is a probabilitydistribution and it satisfies the detailed balance conditionπ_(θ)(n)q(n, n+e_(r))=π_(θ)(n+e_(r))q(n+e_(r), n). The expected numberof paths set up that serve access point s is then

${{E_{\theta}\lbrack {\sum\limits_{r\; \in \; R}{H_{sr}n_{r}}} \rbrack} = {\sum\limits_{n \in \; N}{{\pi_{\theta}(n)}{\sum\limits_{r\; \in \; R}{H_{sr}n_{r}}}}}},$

sεS or in matrix form

$\sum\limits_{n \in \; N}{{\pi_{\theta}(n)}{{Hn}.}}$

Formulating the optimization problem. Consider the optimization problemmaximize

${{{\sum\limits_{s\; \in \; S}{d_{s}\log \; x_{s}}} - {\sum\limits_{n \in \; N}{{p(n)}\log \; {p(n)}\mspace{14mu} {subject}\mspace{14mu} {to}\mspace{14mu} {\sum\limits_{n \in \; N}{{p(n)}\mspace{11mu} {Hn}}}}}} = x},$

sεS, and

${\sum\limits_{n \in \; N}{p(n)}} = 1$

over p(n)≧0, nεN; x_(s), sεS. (7). The objective function is concave anddifferentiable and the constraints are linear, so Lagrangian methods maybe used. The Lagrangian for the problem is

${{L( {p,{x\text{;}\theta},\kappa} )} = {{\sum\limits_{s\; \in \; S}{d_{s}\log \; x_{s}}} - {\sum\limits_{n \in \; N}{{p(n)}\log \; {p(n)}}} - {\sum\limits_{s\; \in \; S}{\theta_{s}( {x_{s} - {\sum\limits_{n \in \; N}{{p(n)}{\sum\limits_{r \in \; R}{H_{sr}n_{r}}}}}} )}} - {\kappa ( {1 - {\sum\limits_{n \in \; N}{p(n)}}} )}}},$

where θ_(s), sεS, and κ are Lagrange multipliers for the constraints. Weknow there exist Lagrange multipliers θ_(s), sεS, κ such that theLagrangian is maximized at p, x that are feasible, and p, x are then,for the original problem.

We now attempt to maximize L over p(n)≧0 and x_(s)≧0. Differentiatingwith respect to x_(s) gives

${\frac{\partial L}{\partial x_{s}} = {\frac{d_{s}}{x_{s}} - \theta_{s}}},$

and differentiating with respect to p(n) gives

$\frac{\partial L}{\partial{p(n)}} = {{- 1} - {\log \; {p(n)}} + {\sum\limits_{r \in \; R}{\theta_{s{(r)}}n_{r}}} + {\kappa.}}$

At a maximum over x_(s), we have that

$\begin{matrix}{\theta_{s} = {\frac{d_{s}}{x_{s}}.}} & (8)\end{matrix}$

At a maximum over p(n),

${p(n)} = {{\exp( {\kappa - 1 + {\sum\limits_{r \in \; R}{\theta_{s{(r)}}n_{r}}}} )}.}$

Choose κ so that (p(n),nεN) sum to 1: then

${{p(n)} = \frac{\exp( {\sum\limits_{r \in \; R}{\theta_{s{(r)}}n_{r}}} )}{\sum\limits_{m \in \; N}{\exp( {\sum\limits_{r \in \; R}{\theta_{s{(r)}}m_{r}}} )}}},$

of the form (6).

Thus the Markov chain (4)-(5) achieves an equilibrium distribution (6)that solves the optimization problem (7) provided the parameters (θ_(s),sεS) are set to satisfy (8). The objective function of this optimizationproblem is the sum of the proportionally fair objective function (1)plus the entropy of the probability distribution (p(n),nεN). The dual tothe optimization problem (7) is to maximize

${V(\theta)} = {{\sum\limits_{s \in S}\; {d_{s}\log \; \theta_{s}}} - {\log( {\sum\limits_{n \in N}\; {\exp( {\sum\limits_{s \in S}\; {\theta_{s}{\sum\limits_{r \in R}{H_{sr}n_{r}}}}} )}} )}}$

over θ_(s)≧0, sεS. At the optimum θ_(s)=d_(s)/E_(θ)[Σ_(rεR)H_(sr)n_(r)]once again. This can be used to develop a convergence proof forsufficiently slow changes of (θ_(s), sεS)—Exercise 7.23, [4]. Whenθ_(s)=βd_(s)/x_(s) then this corresponds to multiplying the first termof the objective function (7) by β, i.e. to increasing the importance ofthe proportionally fair objective function relative to the entropy term.

Aspects of this disclosure provide an adaptive method for choosing β.Since both β and (θ_(s), sεS) may be time-varying, the Markov chain(4)-(5) may not be time-homogeneous. After an initial period ofconvergence, both β and (θ_(s), sεS) may become relatively stable.Although β and (θ_(s), sεS) may fluctuate with the random transitions ofthe Markov chain, these fluctuations may be comparable with fluctuationsin the numbers of users (d_(s), sεS).

The rate at which paths serving access point s are torn down and set up,are γm_(s) and k_(s)γ exp(θ_(s)) respectively. Thus in equilibriumm_(s)≈k_(s) exp(θ_(s)), and thus

$\theta_{s} \approx {{\log ( \frac{m_{s}}{k_{s}} )}.}$

The ratio m_(s)/k_(s) is the ratio of paths in use to paths notcurrently in use but individually system feasible for access point s: soit may be helpful to set the average value of θ_(s) over sεS to be saylog [intensity/(1−intensity)] where intensity=90%, where log is thenatural logarithm. Thus log₁₀ z=(log₁₀ e)log z. Accordingly, θ_(s) maybe updated according to

${\theta_{s} = {\beta \frac{d_{s}}{m_{s}}}},$

where

$\beta = \frac{S\; {\log \lbrack 9\rbrack}}{\sum\limits_{s \in S}\; \frac{d_{s}}{m_{s}}}$

to ensure that Σ_(sεS)θ_(s)/S=log [9].

This approach is relatively aggressive in so far as it usesinstantaneous value of m_(s) rather than its time-average x_(s), as wellas because it does not dampen the updates to θ_(s). In some embodiment,s the exp(θ_(s)) is averaged, rather than θ_(s).

In networks with less symmetry, it is possible to update θ_(s) bysetting it to

$\theta_{s} = {\beta \frac{d_{s}}{m_{s}}}$

where

${\beta = {\frac{\sum\limits_{s \in S}\; d_{s}}{\sum\limits_{s \in S}\; \frac{d_{s}^{2}}{m_{s}}}{\log \lbrack 9\rbrack}}};$

this may ensure that the weighted averageΣ_(sεS)d_(s)θ_(s)/Σ_(sεS)d_(s)=log[9].

In an embodiment, N ⊂{0,1}^(R) is the set of feasible states, and

${h_{s} = {\sum\limits_{r \in R}\; H_{sr}}},{m_{s} = {\sum\limits_{r \in R}\; {H_{sr}n_{r}}}},$

respectively are the number of paths each individually capable ofserving access point s (note that these may not be compatible with eachother, so the maximum capacity available to access point s may be lessthan h_(s)), and the number of paths currently set up from access points. Now let n be a Markov process with state space N and transition rates2q(n, n−e_(r))=γ if n_(r)=1, (9)

${q( {n,{n + e_{r}}} )} = {\frac{\gamma}{h_{s}}{\exp ( \theta_{s{(r)}} )}}$

if n+e_(r)εN, (10) for rεR. Again a path that is set up remains so for atime that is exponentially distributed with parameter γ. The rate (10)corresponds to access point s attempting to set up a path at rate γ exp(θ_(s(r))), and choosing at random one of the h_(s) paths from accesspoint s to to try. (Under the preliminary model, access point s attemptsto set up a path at rate γh_(s) exp (θ_(s(r))), choosing at random oneof the h_(s) paths to try. Thus the preliminary model is more aggressivefor access points s for which h_(s) is larger.)

The equilibrium distribution for n=(n_(r), rεR) can be written in theform

${{\pi_{\theta}(n)} = {B{\prod\limits_{s \in S}\; ( {h_{s}^{- m_{s}}{\exp ( {\theta_{s}m_{s}} )}} )}}},$

nεN, (11), where B is a normalizing constant chosen so that thedistribution (11) sums to one. If we set θ by the relation

${\theta_{s} = {\beta \frac{d_{s}}{x_{s}}}},$

then the distribution (11) solves the optimization problem (7) with theamended objective function

${\beta {\sum\limits_{s \in S}\; {d_{s}\log \; x_{s}}}} - {\sum\limits_{n \in N}\; {{p(n)}\; {{\log( {{p(n)}{\prod\limits_{s \in S}\; h_{s}^{m_{s}}}} )}.}}}$

[Equivalently, the distribution (11) solves the optimization problem (7)with its entropy term replaced by minus the Kullbackâ

″-Leibler divergence of the distribution (p(n), nεN) from thedistribution where the components of n are independent Bernoulli randomvariables, n_(r) with mean 1/(1+h_(s(r))).]

In another embodiment, n is a Markov process with state space N andtransition rates q(n, n−e_(r))=γ if n=1, (12)

${q( {n,{n + e_{r}}} )} = {\frac{\gamma}{h_{s} - m_{s}}{\exp ( \theta_{s{(r)}} )}}$

if n+e_(r)εN, (13) for rεR. Again a path that is set up remains so for atime that is exponentially distributed with parameter γ. The rate (13)corresponds to access point s attempting to set up a path at rate γ exp(θ_(s(r))), and choosing at random one of the h_(s)−m_(s) paths it isnot already using to try.

The equilibrium distribution for n=(n_(r), rεR) can be written in theform

${{\pi_{\theta}(n)} = {B{\prod\limits_{s \in S}\; ( {{( {h_{s} - m_{s}} )!}{\exp ( {\theta_{s}m_{s}} )}} )}}},$

nεN, (14) where B is a normalizing constant chosen so that thedistribution (14) sums to one. If we set θ by the relation

${\theta_{s} = {\beta \frac{d_{s}}{x_{s}}}},$

then the distribution (14) solves the optimization problem (7) with theamended objective function

${\beta {\sum\limits_{s \in S}\; {d_{s}\log \; x_{s}}}} - {\sum\limits_{m \in N}\; {{p(n)}{{\log( \frac{p(n)}{\prod\limits_{s \in S}\; {( {h_{s} - m_{s}} )!}} )}.}}}$

FIG. 16 illustrates a block diagram of an embodiment processing system1600 for performing methods described herein, which may be installed ina host device. As shown, the processing system 1600 includes a processor1604, a memory 1606, and interfaces 1610-1614, which may (or may not) bearranged as shown in FIG. 16. The processor 1604 may be any component orcollection of components adapted to perform computations and/or otherprocessing related tasks, and the memory 1606 may be any component orcollection of components adapted to store programming and/orinstructions for execution by the processor 1604. In an embodiment, thememory 1606 includes a non-transitory computer readable medium. Theinterfaces 1610, 1612, 1614 may be any component or collection ofcomponents that allow the processing system 1600 to communicate withother devices/components and/or a user. For example, one or more of theinterfaces 1610, 1612, 1614 may be adapted to communicate data, control,or management messages from the processor 1604 to applications installedon the host device and/or a remote device. As another example, one ormore of the interfaces 1610, 1612, 1614 may be adapted to allow a useror user device (e.g., personal computer (PC), etc.) tointeract/communicate with the processing system 1600. The processingsystem 1600 may include additional components not depicted in FIG. 16,such as long term storage (e.g., non-volatile memory, etc.).

In some embodiments, the processing system 1600 is included in a networkdevice that is accessing, or part otherwise of, a telecommunicationsnetwork. In one example, the processing system 1600 is in a network-sidedevice in a wireless or wireline telecommunications network, such as abase station, a relay station, a scheduler, a controller, a gateway, arouter, an applications server, or any other device in thetelecommunications network. In other embodiments, the processing system1600 is in a user-side device accessing a wireless or wirelinetelecommunications network, such as a mobile station, a user equipment(UE), a personal computer (PC), a tablet, a wearable communicationsdevice (e.g., a smartwatch, etc.), or any other device adapted to accessa telecommunications network.

In some embodiments, one or more of the interfaces 1610, 1612, 1614connects the processing system 1600 to a transceiver adapted to transmitand receive signaling over the telecommunications network. FIG. 17illustrates a block diagram of a transceiver 1700 adapted to transmitand receive signaling over a telecommunications network. The transceiver1700 may be installed in a host device. As shown, the transceiver 1700comprises a network-side interface 1702, a coupler 1704, a transmitter1706, a receiver 1708, a signal processor 1710, and a device-sideinterface 1712. The network-side interface 1702 may include anycomponent or collection of components adapted to transmit or receivesignaling over a wireless or wireline telecommunications network. Thecoupler 1704 may include any component or collection of componentsadapted to facilitate bi-directional communication over the network-sideinterface 1702. The transmitter 1706 may include any component orcollection of components (e.g., up-converter, power amplifier, etc.)adapted to convert a baseband signal into a modulated carrier signalsuitable for transmission over the network-side interface 1702. Thereceiver 1708 may include any component or collection of components(e.g., down-converter, low noise amplifier, etc.) adapted to convert acarrier signal received over the network-side interface 1702 into abaseband signal. The signal processor 1710 may include any component orcollection of components adapted to convert a baseband signal into adata signal suitable for communication over the device-side interface(s)1712, or vice-versa. The device-side interface(s) 1712 may include anycomponent or collection of components adapted to communicatedata-signals between the signal processor 1710 and components within thehost device (e.g., the processing system 1600, local area network (LAN)ports, etc.).

The transceiver 1700 may transmit and receive signaling over any type ofcommunications medium. In some embodiments, the transceiver 1700transmits and receives signaling over a wireless medium. For example,the transceiver 1700 may be a wireless transceiver adapted tocommunicate in accordance with a wireless telecommunications protocol,such as a cellular protocol (e.g., long-term evolution (LTE), etc.), awireless local area network (WLAN) protocol (e.g., Wi-Fi, etc.), or anyother type of wireless protocol (e.g., Bluetooth, near fieldcommunication (NFC), etc.). In such embodiments, the network-sideinterface 1702 comprises one or more antenna/radiating elements. Forexample, the network-side interface 1702 may include a single antenna,multiple separate antennas, or a multi-antenna array configured formulti-layer communication, e.g., single input multiple output (SIMO),multiple input single output (MISO), multiple input multiple output(MIMO), etc. In other embodiments, the transceiver 1700 transmits andreceives signaling over a wireline medium, e.g., twisted-pair cable,coaxial cable, optical fiber, etc. Specific processing systems and/ortransceivers may utilize all of the components shown, or only a subsetof the components, and levels of integration may vary from device todevice.

Although the description has been described in detail, it should beunderstood that various changes, substitutions and alterations can bemade without departing from the spirit and scope of this disclosure asdefined by the appended claims. Moreover, the scope of the disclosure isnot intended to be limited to the particular embodiments describedherein, as one of ordinary skill in the art will readily appreciate fromthis disclosure that processes, machines, manufacture, compositions ofmatter, means, methods, or steps, presently existing or later to bedeveloped, may perform substantially the same function or achievesubstantially the same result as the corresponding embodiments describedherein. Accordingly, the appended claims are intended to include withintheir scope such processes, machines, manufacture, compositions ofmatter, means, methods, or steps.

What is claimed:
 1. A method for scheduling wireless transmissions, themethod comprising: selecting routes between access nodes and one or moregateways in a wireless mesh network, each of the routes including one ormore wireless links; mapping wireless links in at least some of theroutes to timeslots of a frame to form a plurality of synchronized pathsbetween the access nodes and the gateways; iteratively adding, orremoving, an individual one of the plurality of synchronized paths to,or from, a TDM routing schedule according to each individual state in astate progression of a Markov chain, the TDM routing schedule includinga different subset of synchronized paths for each state in the Markovchain; and instructing the access nodes and the one or more gateways tocommunicate messages over the wireless links according the TDM routingschedule.
 2. The method of claim 1, wherein the state progressionthrough the Markov chain progresses through fewer than all states in theMarkov chain.
 3. The method of claim 1, wherein each state in theprogression through states of the Markov chain maps a differentcombination of synchronized paths to the TDM routing schedule.
 4. Themethod of claim 3, wherein iteratively adding, or removing, anindividual one of the plurality of synchronized paths to, or from, theTDM routing schedule according to each individual state in the stateprogression of the Markov chain comprises: transitioning from a previousstate in the Markov chain to a subsequent state in the Markov chainbased on a proportionally fair transition rate.
 5. The method of claim4, wherein transitioning from the previous state in the Markov chain tothe subsequent state in the Markov chain comprises: adding a firstsynchronized path to the TDM routing schedule when the firstsynchronized path is mapped to the TDM routing schedule by thesubsequent state of the Markov chain without being mapped to the TDMrouting schedule by the previous state of the Markov chain.
 6. Themethod of claim 3, wherein iteratively adding, or removing, anindividual one of the plurality of synchronized paths to, or from, theTDM routing schedule according to each state during a progressionthrough states of a Markov chain comprises: determining whether a firstsynchronized path mapped to the TDM routing schedule by the subsequentstate of the Markov chain is feasible based on an interference model ofthe mesh network; and adding the first synchronized path to the TDMrouting schedule if the first synchronized path is feasible.
 7. Themethod of claim 6, wherein the interference model is a protocolinterference model between the wireless links, the protocol interferencemodel prohibiting transmissions from being scheduled over two or moreinterfering links during the same timeslot of the frame.
 8. The methodof claim 6, wherein the interference model is a physical interferencemodel between the wireless links, the physical interference modelpermitting transmissions to be scheduled over two or more interferinglinks during the same timeslot of the frame when an interference costassociated with the transmissions is less than a threshold.
 9. Themethod of claim 8, wherein the interference costs vary based on theamount of interference experienced between transmissions performed overthe two or more interfering links during the same period.
 10. The methodof claim 1, wherein iteratively adding, or removing, an individual oneof the plurality of synchronized paths to, or from, the TDM routingschedule according to each individual state in the state progression ofthe Markov chain comprises: transitioning from a previous state in theMarkov chain to a current state in the Markov chain based on atransition rate of the Markov chain; and adjusting the transition rateof the Markov chain based on a ratio of users to synchronized pathsspecified by the subsequent state in the Markov chain.
 11. The method ofclaim 10, wherein the ratio of users to synchronized paths includes asummation of ratios between users accessing each of the access nodes andsynchronized paths assigned to the corresponding access point in the TDMrouting schedule.
 12. The method of claim 10, wherein the transition isdecreased when the ratio of users to synchronized paths specified by thesubsequent state in the Markov chain exceeds a ratio of users tosynchronized paths specified by the previous state in the Markov chain.13. An apparatus comprising: a processor; and a non-transitory computerreadable storage medium storing programming for execution by theprocessor, the programming including instructions to: select routesbetween access nodes and one or more gateways in a wireless meshnetwork, each of the routes including one or more wireless links; mapwireless links in at least some of the routes to timeslots of a frame toform a plurality of synchronized paths between the access nodes and thegateways; iteratively add, or remove, an individual one of the pluralityof synchronized paths to, or from, a TDM routing schedule according toeach individual state in a state progression of a Markov chain, the TDMrouting schedule including a different subset of synchronized paths foreach state in the Markov chain; and instruct the access nodes and theone or more gateways to communicate messages over the wireless linksaccording the TDM routing schedule.
 14. The apparatus of claim 13,wherein the state progression through the Markov chain progressesthrough fewer than all states in the Markov chain.
 15. The apparatus ofclaim 13, wherein each state in the progression through states of theMarkov chain maps a different combination of synchronized paths to theTDM routing schedule.
 16. The apparatus of claim 15, wherein theinstructions to iteratively add, or remove, an individual one of theplurality of synchronized paths to, or from, the TDM routing scheduleaccording to each individual state in the state progression of theMarkov chain includes instructions to: transition from a previous statein the Markov chain to a subsequent state in the Markov chain based on aproportionally fair transition rate.
 17. The apparatus of claim 16,wherein the instructions to transition from the previous state in theMarkov chain to the subsequent state in the Markov chain includeinstructions to: add a first synchronized path to the TDM routingschedule when the first synchronized path is mapped to the TDM routingschedule by the subsequent state of the Markov chain without beingmapped to the TDM routing schedule by the previous state of the Markovchain.
 18. The apparatus of claim 16, wherein the instructions toiteratively add, or remove, an individual one of the plurality ofsynchronized paths to, or from, the TDM routing schedule according toeach individual state in the state progression of the Markov chainincludes instructions to: determine whether a first synchronized pathmapped to the TDM routing schedule by the subsequent state of the Markovchain is feasible based on an interference model of the mesh network;and add the first synchronized path to the TDM routing schedule if thefirst synchronized path is feasible.
 19. The apparatus of claim 18,wherein the interference model is a protocol interference model betweenthe wireless links, the protocol interference model prohibitingtransmissions from being scheduled over two or more interfering linksduring the same timeslot of the frame.
 20. The apparatus of claim 18,wherein the interference model is a physical interference model betweenthe wireless links, the physical interference model permittingtransmissions to be scheduled over two or more interfering links duringthe same timeslot of the frame when an interference cost associated withthe transmissions is less than a threshold.
 21. The apparatus of claim20, wherein the interference costs vary based on the amount ofinterference experienced between transmissions performed over the two ormore interfering links during the same period.
 22. A computer programproduct comprising a non-transitory computer readable storage mediumstoring programming, the programming including instructions to: selectroutes between access nodes and one or more gateways in a wireless meshnetwork, each of the routes including one or more wireless links; mapwireless links in at least some of the routes to timeslots of a frame toform a plurality of synchronized paths between the access nodes and thegateways; iteratively add, or remove, an individual one of the pluralityof synchronized paths to, or from, a TDM routing schedule according toeach individual state in a state progression of a Markov chain, the TDMrouting schedule including a different subset of synchronized paths foreach state in the Markov chain; and instruct the access nodes and theone or more gateways to communicate messages over the wireless linksaccording the TDM routing schedule.
 23. The computer program product ofclaim 22, wherein the state progression through the Markov chainprogresses through fewer than all states in the Markov chain.
 24. Thecomputer program product of claim 22, wherein each state in theprogression through states of the Markov chain maps a differentcombination of synchronized paths to the TDM routing schedule.